| Conditions | 6 |
| Paths | 10 |
| Total Lines | 31 |
| Lines | 0 |
| Ratio | 0 % |
| Changes | 1 | ||
| Bugs | 0 | Features | 0 |
| 1 | var parse_host = function(host){ |
||
| 2 | if(typeof tlds === "undefined"){ |
||
|
|
|||
| 3 | throw new Error('No TLDs!'); |
||
| 4 | } |
||
| 5 | |||
| 6 | var parts = host.split("."); |
||
| 7 | var stack = ""; |
||
| 8 | var tld_level = 1; //unknown tld are 1st level |
||
| 9 | for(var i=parts.length-1, part;i>=0;i--){ |
||
| 10 | part = parts[i]; |
||
| 11 | stack = stack ? part + "." + stack : part; |
||
| 12 | if(!tlds[stack]){ |
||
| 13 | break; |
||
| 14 | } |
||
| 15 | tld_level = tlds[stack]; |
||
| 16 | } |
||
| 17 | if(parts.length <= tld_level ) { |
||
| 18 | return { |
||
| 19 | tld: null, |
||
| 20 | domain: host |
||
| 21 | }; |
||
| 22 | } else { |
||
| 23 | return { |
||
| 24 | tld : parts.slice(-tld_level).join('.'), |
||
| 25 | domain : parts.slice(-tld_level-1).join('.'), |
||
| 26 | sub : parts.slice(0, (-tld_level-1)).join('.'), |
||
| 27 | }; |
||
| 28 | } |
||
| 29 | |||
| 30 | |||
| 31 | }; |
This checks looks for references to variables that have not been declared. This is most likey a typographical error or a variable has been renamed.
To learn more about declaring variables in Javascript, see the MDN.